package cn.iocoder.yudao.module.infra.repository.mybatis.dao.file;

import cn.iocoder.yudao.common.pojo.PageResult;
import cn.iocoder.yudao.core.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.core.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.infra.repository.mybatis.domain.file.FileConfig;
import cn.iocoder.yudao.module.infra.vo.file.config.FileConfigPageReqVO;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface FileConfigMapper extends BaseMapperX<FileConfig> {

    default PageResult<FileConfig> selectPage(FileConfigPageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<FileConfig>()
                .likeIfPresent(FileConfig::getName, reqVO.getName())
                .eqIfPresent(FileConfig::getStorage, reqVO.getStorage())
                .betweenIfPresent(FileConfig::getCreateTime, reqVO.getCreateTime())
                .orderByDesc(FileConfig::getId));
    }

}
